package com.lzy.cloud.order.constants;

/**
 * Description: 订单模块常量
 *
 * @author lc Create Date Time:Mar 21, 20173:10:57 PM
 */
public class CommonConstants {

    public static final int ONE_DAY = 60 * 60 * 24;

    /**
     * 保险单价
     */
    public static final Integer INSU_PRICE = 10;

    /**
     * 未付款时间
     */
    public static final Integer ADD_STOP_PAY_TIME = 30;

    /**
     * 默认时间
     */
    public static final String DEFAULT_TIME = "1000-01-01 00:00:00.0";

    public static final class ActionFlag {
        /**
         * 可用
         */
        public static final Integer YES = 0;
        /**
         * 不可用
         */
        public static final Integer NO = 1;
    }

    // 业务板块的代号
    public static final class Biz {
        /**
         * 房车销售
         */
        public static final String TOUR_CAR_SALE = "1";
        /**
         * 房车租赁
         */
        public static final String TOUR_CAR_RENT = "2";
        /**
         * 露营地
         */
        public static final String CAMP = "3";
        /**
         * 户外装备
         */
        public static final String OUTDOOR = "4";
        /**
         * 路线
         */
        public static final String LINE = "5";
        /**
         * 玩什么
         */
        public static final String PLAY = "6";
        /**
         * 一日游
         */
        public static final String GUIDE = "7";
        /**
         * 都在玩
         */
        public static final String PROMOTION = "8";
        /**
         * 产品管理（工作平台）
         */
        public static final String PRODUCT = "9";
        /**
         * 房车租赁车状态
         */
        public static final String TOUR_CAR_STATE = "22";
        /**
         * 汽摩券
         */
        public static final String MOTOR_COUPON = "11";
        /**
         * 智能设备（水电桩）
         */
        public static final String INTELLIGENT_DEVICE = "12";
        /**
         * 圆梦计划
         */
        public static final String DREAM_PLAN = "13";
        /**
         * 女王节
         */
        public static final String QUEEN_PLAN = "14";
        /**
         * 代理商产品
         */
        public static final String AGENT_PRODUCT = "15";
        /**
         * 代理商协议
         */
        public static final String AGENT_AGREEMENT = "16";
        /**
         * 火车票
         */
        public static final String TICKET_TRAIN = "31";
    }

    // 业务板块的代号
    public static final class BizName {
        /**
         * 房车销售
         */
        public static final String TOUR_CAR_SALE = "房车销售";
        /**
         * 房车租赁
         */
        public static final String TOUR_CAR_RENT = "房车租赁";
        /**
         * 露营地
         */
        public static final String CAMP = "露营地";
        /**
         * 户外装备
         */
        public static final String OUTDOOR = "户外装备";
        /**
         * 路线
         */
        public static final String LINE = "路线";
        /**
         * 玩什么
         */
        public static final String PLAY = "玩什么";
        /**
         * 一日游
         */
        public static final String GUIDE = "一日游";
        /**
         * 都在玩
         */
        public static final String PROMOTION = "都在玩";
        /**
         * 产品管理（工作平台）
         */
        public static final String PRODUCT = "产品管理（工作平台）";
        /**
         * 房车租赁车状态
         */
        public static final String TOUR_CAR_STATE = "房车租赁车状态";
        /**
         * 汽摩券
         */
        public static final String MOTOR_COUPON = "汽摩券";
        /**
         * 智能设备（水电桩）
         */
        public static final String INTELLIGENT_DEVICE = "智能设备（水电桩）";
        /**
         * 圆梦计划
         */
        public static final String DREAM_PLAN = "圆梦计划";
        /**
         * 女王节
         */
        public static final String QUEEN_PLAN = "女王节";
        /**
         * 代理商产品
         */
        public static final String AGENT_PRODUCT = "代理商产品";
        /**
         * 代理商协议
         */
        public static final String AGENT_AGREEMENT = "代理商协议";
        /**
         * 火车票
         */
        public static final String TICKET_TRAIN = "火车票";
    }

    /**
     * 状态（0-否，1-是）
     */
    public static final class Status {
        public static final Integer ZERO = 0;
        public static final Integer ONE = 1;
    }

    // 订单大状态
    public static final class OrderBigStatus {
        /**
         * 待付款
         */
        public static final Integer NO_PAY_ORDER = 0;
        /**
         * 有效订单
         */
        public static final Integer VALID_ORDER = 1;
        /**
         * 已完结
         */
        public static final Integer OVER_ORDER = 2;
        /**
         * 售后
         */
        public static final Integer BACK_ORDER = 3;
    }

    // 订单来源
    public static final class OrderSource {
        /**
         * 移动端
         */
        public static final Integer MOBILE = 0;
        /**
         * pc
         */
        public static final Integer PC = 1;
        /**
         * 第三方平台
         */
        public static final Integer THIRD_PLATFORM = 2;
        /**
         * H5分享页
         */
        public static final Integer H5 = 3;
        /**
         * 免费版微信小程序
         */
        public static final Integer WECHAT_APPLET_FREE = 10;
        /**
         * 收费版微信小程序
         */
        public static final Integer WECHAT_APPLET_BUY =11;
    }

    /**
     * 状态 0：消费者1：商家
     */
    public static final class TalkStatus {
        public static final Integer ZERO = 0;
        public static final Integer ONE = 1;
    }

    /**
     * 是否发货 0：未发货1：已发货
     */
    public static final class TakeStatus {
        public static final Integer ZERO = 0;
        public static final Integer ONE = 1;
    }

    // 支付方式
    public static final class PayWayOrder {
        /**
         * 线上
         */
        public static final Integer IS_ONLINE = 0;
        /**
         * 线下
         */
        public static final Integer IS_NOT_ONLINE = 1;
    }

    // 订单状态的小动作
    public static final class OrderAction {
        /**
         * 支付
         */
        public static final Integer PAY = 0;
        /**
         * 取消
         */
        public static final Integer CANCLE = 1;
    }

    // 是否包邮
    public static final class isShip {
        /**
         * 不包邮
         */
        public static final Integer NOSHIP = 0;
        /**
         * 包邮
         */
        public static final Integer YESSHIP = 1;
    }

    // 收货地址
    public static final class SelectedAddress {
        /**
         * 不设置默认地址
         */
        public static final Integer NO = 0;
        /**
         * 设置默认地址
         */
        public static final Integer YES = 1;
    }

    // 评价状态
    public static final class AssessStatus {
        /**
         * 未评价
         */
        public static final Integer NO = 0;
        /**
         * 已评价
         */
        public static final Integer YES = 1;
    }

    // 售后的状态
    public static final class RefundStatus {
        /**
         * 不显示
         */
        public static final Integer NOREFUND = 0;
        /**
         * 申请售后
         */
        public static final Integer APPLYREFUND = 1;
        /**
         * 查看售后
         */
        public static final Integer CHECKREFUND = 2;
        /**
         * 查看售后
         */
        public static final Integer CHECKREFUND1 = 3;
    }

    //发送站内信短信的节点
    public static final class AfterSaleNode {
        /**
         * 申请售后
         */
        public static final Integer APPLY = 1;
        /**
         * 商家同意退款
         */
        public static final Integer SHOP_AGREE = 2;
        /**
         * 平台介入中
         */
        public static final Integer INVOLVED = 3;
        /**
         * 平台同意退款
         */
        public static final Integer BACK_AGREE = 4;
        /**
         * 拒绝退款
         */
        public static final Integer BACK_REFUSE = 5;
        /**
         * 申请投诉
         */
        public static final Integer APPEAL = 6;
    }

    // 订单费用项目明细类型
    public static final class OrderExpenseItemType {

        /**
         * 余额抵扣金额
         */
        public static final Integer DIRECT_AMOUNT = 1;
        /**
         * 在线支付部分
         */
        public static final Integer ONLINE_AMOUNT = 4;
        /**
         * 龙珠、积分
         */
        public static final Integer DRAGON_AMOUNT = 5;
        /**
         * 房车券
         */
        public static final Integer CAR_VOUCHER = 6;
        /**
         * 房车代金券
         */
        public static final Integer CAR_CASH_VOUCHER = 7;
        /**
         * 不计免赔费
         */
        public static final Integer FRANCHISE_MONEY = 95;
        /**
         * 保险费
         */
        public static final Integer INSURANCE = 96;
        /**
         * 平台服务费
         */
        public static final Integer PLATFORM = 97;
        /**
         * 运费
         */
        public static final Integer FREIGHT = 98;
        /**
         * 商品总价
         */
        public static final Integer TOTAL_PRICE = 99;
    }

    // 费用类型
    public static final class OrderExpenseItemWay {
        /**
         * 收费项
         */
        public static final Integer CHARGE_ITEM = 1;
        /**
         * 抵扣项
         */
        public static final Integer DEDUCTIBLE_ITEM = 2;
    }

    // 订单退换货退款金额明细类型
    public static final class OrderRefundMoneyType {
        /**
         * 总额
         */
        public static final Integer TOTAL = 1;
        /**
         * 在线支付
         */
        public static final Integer ONLINE = 2;
        /**
         * 余额
         */
        public static final Integer BALANCE = 3;
        /**
         * 龙珠、积分
         */
        public static final Integer DRAGON = 4;
        /**
         * 可提现余额
         */
        public static final Integer DIRECT = 11;
        /**
         * 佣金余额
         */
        public static final Integer COMMISSION = 12;
        /**
         * 商品价格
         */
        public static final Integer COMMODITY = 13;
        /**
         * 运费
         */
        public static final Integer FREIGHT = 14;
        /**
         * 保险
         */
        public static final Integer INSURANCE = 15;
        /**
         * 不计免赔
         */
        public static final Integer FREE_COMPENSATION = 16;
    }

    /**
     * redis前缀
     *
     * @author lc
     * @date Jul 10, 2017 9:50:33 AM
     */
    public static final class DistributePrefix {
        /**
         * 缓存露营地经纬度以及ID
         */
        public static final String GEO_CAMPSITE_KEY = "geo:campsite:key";
        /**
         * 缓存露营地经纬度以及ID
         */
        public static final String QUERY_CAMPSITE = "query:campsite";
        /**
         * 房车租赁并发锁:lock:car:schedule:skuCode+日期
         */
        public static final String LOCK_CAR_SCHEDULE = "lock:car:schedule";
        /**
         * 露营地并发锁:lock:campsite:schedule:skuCode+日期
         */
        public static final String LOCK_CAMPSITE_SCHEDULE = "lock:campsite:schedule";
    }

    // 订单券记录-收支类型
    public static final class OrderCouponLogType {
        /**
         * 冻结
         */
        public static final Integer BLOCK = 0;
        /**
         * 用户消费
         */
        public static final Integer USER_CONSUME = 1;
        /**
         * 系统退回
         */
        public static final Integer SYSTEM_RETURN = 2;
        /**
         * 购买
         */
        public static final Integer BUY = 3;
    }

    public static final class OrderStatusHistoryPayStatus {
        /**
         * 未付款
         */
        public static final Integer NO = 0;
        /**
         * 已付款
         */
        public static final Integer YES = 1;
    }

    /**
     *  房车租赁的价格明细快照 类型
     */
    public static final class OrderCarRentMoneyType {
        /**
         * 整天
         */
        public static final Integer ALL_DAY = 1;
        /**
         * 超时时间
         */
        public static final Integer TIMEOUT = 2;
    }

    /**
     * 卡券 类型
     */
    public static final class BaseCouponCategory {
        /**
         * 房车券
         */
        public static final Integer VOUCHER_TICKET = 1;
        /**
         * 商品抵用券
         */
        public static final Integer GOODS_TICKET = 2;
        /**
         * 汽摩券
         */
        public static final Integer MOTORCYCLE_TICKET = 3;
        /**
         * 房车代金券
         */
        public static final Integer VOUCHER_AGENT_TICKET = 4;
    }

}
